---
sidebar_position: 6
---

# Loki

The Loki backend is **ingest-only**, and sends events to a Loki HTTP API.

See the Loki HTTP API [documentation](https://grafana.com/docs/loki/latest/reference/loki-http-api/#ingest-logs) for details on how the API handles events.

## Behaviour and configurations

### Configuration

The following values are required when creating a webhook backend:

- `url`: (`string`, required) the HTTP url to send the events to.
- `headers`: (`map`, optional) the headers to be attached to the HTTP request, for authentication purposes.

### Implementation Details

Implementation is based on the [webhook backend](/backends/webhook).

Events will have the log event message set, with all other keys set to structured metadata. Events will be batched with a maximum of 250 events per request.

The source name and service name will be used as stream labels.

The `event_message` and `timestamp` fields will be dropped from the payload to avoid sending duplicate data.

### Loki Configuration

Loki must be configured to allow structured metadata. It is recommended to increase the default maximum number of structured metadata fields to 500 to accomodate larger log structures of different products.
